package com.lino.design;

/**
 * @description: 优惠券折扣计算接口
 * @author: lingjian
 * @createDate: 2023/2/9 16:14
 */
public class CouponDiscountService {

    /**
     * 计算优惠券折扣
     *
     * @param type        优惠券类型：1-直减券，2-满减券，3-折扣券，4-n元购
     * @param typeContent 折扣价格
     * @param skuPrice    商品价格
     * @param typeExt     满减价格
     * @return 折扣后的价格
     */
    public double discountAmount(int type, double typeContent, double skuPrice, double typeExt) {
        // 1.直减券
        if (1 == type) {
            return skuPrice - typeContent;
        }
        // 2.满减券
        if (2 == type) {
            if (skuPrice < typeExt) {
                return skuPrice;
            }
            return skuPrice - typeContent;
        }
        // 3.折扣券
        if (3 == type) {
            return skuPrice * typeContent;
        }
        // 4.n元购
        if (4 == type) {
            return typeContent;
        }
        return 0D;
    }
}
